<?php



namespace App\Services\Other\Providers;


use App\Services\Other\Interfaces\AdFromServiceInterface;
use App\Services\Other\Interfaces\AnnouncementServiceInterface;
use App\Services\Other\Interfaces\ChannelServiceInterface;
use App\Services\Other\Interfaces\FooterNavServiceInterface;
use App\Services\Other\Interfaces\LinkServiceInterface;
use App\Services\Other\Interfaces\MpWechatServiceInterface;
use App\Services\Other\Interfaces\NavServiceInterface;
use App\Services\Other\Interfaces\SearchRecordServiceInterface;
use App\Services\Other\Interfaces\SliderServiceInterface;
use App\Services\Other\Interfaces\SmsServiceInterface;
use App\Services\Other\Interfaces\UploadServiceInterface;
use App\Services\Other\Proxies\AnnouncementServiceProxy;
use App\Services\Other\Proxies\SearchRecordService;
use App\Services\Other\Proxies\SmsServiceProxy;
use App\Services\Other\Services\AdFromService;
use App\Services\Other\Services\ChannelService;
use App\Services\Other\Services\FooterNavService;
use App\Services\Other\Services\LinkService;
use App\Services\Other\Services\MpWechatService;
use App\Services\Other\Services\NavService;
use App\Services\Other\Services\SliderService;
use App\Services\Other\Services\UploadService;
use Illuminate\Support\ServiceProvider;

class OtherServiceRegisterProvider extends ServiceProvider
{
    public function register()
    {
        $this->app->instance(AdFromServiceInterface::class, $this->app->make(AdFromService::class));
        $this->app->instance(NavServiceInterface::class, $this->app->make(NavService::class));
        $this->app->instance(FooterNavServiceInterface::class, $this->app->make(FooterNavService::class));
        $this->app->instance(AnnouncementServiceInterface::class, $this->app->make(AnnouncementServiceProxy::class));
        $this->app->instance(LinkServiceInterface::class, $this->app->make(LinkService::class));
        $this->app->instance(SmsServiceInterface::class, $this->app->make(SmsServiceProxy::class));
        $this->app->instance(UploadServiceInterface::class, $this->app->make(UploadService::class));
        $this->app->instance(SliderServiceInterface::class, $this->app->make(SliderService::class));
        $this->app->instance(MpWechatServiceInterface::class, $this->app->make(MpWechatService::class));
        $this->app->instance(SearchRecordServiceInterface::class, $this->app->make(SearchRecordService::class));
        $this->app->instance(ChannelServiceInterface::class, $this->app->make(ChannelService::class));

    }
}
